]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
shell-app: Make recent all app windows on the target workspace
authorSebastian Wick <sebastian.wick@redhat.com>
Mon, 9 Oct 2023 22:13:40 +0000 (00:13 +0200)
committerSebastian Wick <sebastian.wick@redhat.com>
Wed, 25 Oct 2023 12:05:40 +0000 (14:05 +0200)
meta_window_raise_and_make_recent_on_workspace now works on a target
workspace instead of the active workspace. We call this before another
workspace is made active so the previous behavior made the window the
MRU window on the wrong workspace. If an app got activated and one
window closed, the stacking and focus diverged.

Related: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3315
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2991>

src/shell-app.c

index c164e4eeb093537d5eb7ce38f21ebfa3e2237a31..f714ad58770940db5c1bcdaf92e6a33644044ae1 100644 (file)
@@ -458,8 +458,8 @@ shell_app_activate_window (ShellApp     *app,
         {
           MetaWindow *other_window = iter->data;
 
-          if (other_window != window && meta_window_get_workspace (other_window) == workspace)
-            meta_window_raise_and_make_recent (other_window);
+          if (other_window != window)
+            meta_window_raise_and_make_recent_on_workspace (other_window, workspace);
         }
       g_slist_free (windows_reversed);